package db

import (
	"context"
	"github.com/go-redis/redis/v8"
	"wxapi/internal/svc"
)

func initRedis(ctx *svc.ServiceContext) error {
	if err := createRedisClient(ctx); err != nil {
		return err
	}
	return nil
}

func createRedisClient(ctx *svc.ServiceContext) error {
	client := redis.NewClient(&redis.Options{
		Addr:     ctx.Config.Redis.Addr,
		Password: ctx.Config.Redis.Pass,
		DB:       ctx.Config.Redis.DB,
	})
	_, err := client.Ping(context.Background()).Result()
	if err != nil {
		return err
	}

	ctx.Redis = client
	return nil
}
